A Dynamic Data Dependence Analysis Approach for Software Pipelining
نویسندگان
چکیده
This paper presents a run-time pointer aliasing disambiguation method for software pipelining techniques. By combining hardware with software, the method is better than run-time checking method or run-time compensation method, which is capable of dealing with irreversible code, and has limited compensation code space without serious rerollability problem. The new method solves pointer aliasing problem efficiently and makes it possible to obtain potential instruction-level parallel speedup. In this paper instructionlevel parallel speedups of the new method are analyzed in detail. Three theoretical speedups, i.e., general speedup, probabilistic speedup and mean speedup with probability, are given, which will be helpful for studying and evaluating instruction-level parallelism of the new method.
منابع مشابه
A Static Data Dependence Analysis Approach for Software Pipelining
This paper introduces a new static data dependence constraint, called dependence difference inequality, which can deal with coupled subscripts for multi-dimensional array references. Unlike direction vectors, dependence difference inequalities are related to not only the iteration space for a loop program but also the operation distance between two operations. They are more strict than other me...
متن کاملSoftware Pipelining and Register Pressure in VLIW Architectures: Preconditionning Data Dependence Graphs is Experimentally Better than Lifetime-Sensitive Scheduling
Embedding register-pressure control in software pipelining heuristics is the dominant approach in modern back-end compilers. However, aggressive attempts at combining resource and register constraints in software pipelining have failed to scale to real-life loops, leaving weaker heuristics as the only practical solutions. We propose a decoupled approach where register pressure is controlled bef...
متن کاملCoping with Data Dependencies of Multi-dimensional Array References
This paper presents a new static data dependence analysis approach, Dependence Difference Inequality Test, which can deal with coupled subscripts for multi-dimensional array references for software pipelining techniques for nested loops. The Dependence Difference Inequality Test (DDIT) replaces direction vectors with dependence difference inequalities as constraints to variables in a linear sys...
متن کاملInstruction Re-selection for Iterative Modulo Scheduling on High Performance Multi-issue DSPs
An iterative modulo scheduling is very important for compilers targeting high performance multi-issue digital signal processors. This is because these processors are often severely limited by idle state functional units and thus the reduced idle units can have a positively significant impact on their performance. However, complex instructions, which are used in most recent DSPs such as mac, usu...
متن کاملCircuit Retiming Applied to Decomposed Software Pipelining
| This paper elaborates on a new view on software pipelining, called decomposed software pipelining, and introduced The approach is to decou-ple the problem into resource constraints and dependence constraints. Resource constraints management amounts to scheduling an acyclic graph subject to processors constraints , a problem for which an eeciency bound is known, resulting in a bound for loop s...
متن کامل